'''
os.path.exists() 函数用于检查指定的路径是否存在。
os.path.isfile() 函数用于检查指定的路径是否为文件。
os.path.isdir() 函数用于检查指定的路径是否为目录。
os.path.join() 函数用于将多个路径组合成一个路径。
os.path.split() 函数用于将路径分割成目录和文件名。
os.path.splitext() 函数用于将路径分割成文件名和扩展名。
os.path.getsize() 函数用于获取指定路径的文件大小。
os.path.getmtime() 函数用于获取指定路径的文件最后修改时间。
os.path.getatime() 函数用于获取指定路径的文件最后访问时间。
os.path.getctime() 函数用于获取指定路径的文件创建时间。
os.path.abspath() 函数用于获取指定路径的绝对路径。
os.path.dirname() 函数用于获取指定路径的目录名。
os.path.basename() 函数用于获取指定路径的文件名。
os.path.islink() 函数用于检查指定路径是否为符号链接。
os.path.realpath() 函数用于获取指定路径的真实路径。
os.path.expanduser() 函数用于将用户目录中的路径扩展为绝对路径。

os.path.expandvars() 函数用于将环境变量中的路径扩展为绝对路径。
os.path.normpath() 函数用于将路径中的多个分隔符替换为一个分隔符。
os.path.normcase() 函数用于将路径中的大小写转换为标准大小写。
os.path.commonprefix() 函数用于获取多个路径的公共前缀。
os.path.commonpath() 函数用于获取多个路径的公共路径。
os.path.samefile() 函数用于检查两个路径是否指向同一个文件。
os.path.sameopenfile() 函数用于检查两个文件是否指向同一个文件。
os.path.samestat() 函数用于检查两个文件的状态是否相同。
os.path.samestat_result() 函数用于检查两个文件的状态是否相同。
os.path.sameopenfile_result() 函数用于检查两个文件是否指向同一个文件。
os.path.samefile_result() 函数用于检查两个文件是否指向同一个文件。
os.path.sameinode_result() 函数用于检查两个文件的inode是否相同。

'''
import os
print(os.path.abspath(__file__))
print(os.path.dirname(os.path.abspath(__file__)))
print('1--------------------------------------------------------')
curFilePath = os.path.abspath(__file__)
print(os.path.split(curFilePath)) # 文件所在的目录和文件名
print('2--------------------------------------------------------')
print(os.path.split(curFilePath)[0]) # 文件所在的目录
print(os.path.split(curFilePath)[1]) # 文件名
print('3--------------------------------------------------------')
print(os.path.splitext(curFilePath)) # 文件名带绝对路径只是没有后缀和后缀
print(os.path.splitext(curFilePath)[0]) # 文件名带绝对路径
print(os.path.splitext(curFilePath)[1]) # 后缀
print('4--------------------------------------------------------')
print(os.path.dirname(curFilePath)) # 目录名
print(os.path.basename(curFilePath)) # 文件名，带后缀
print(os.path.splitext(curFilePath)[1]) # 后缀
print(os.path.splitext(os.path.basename(curFilePath))[0]) # 获取文件名，不带后缀
print('5--------------------------------------------------------')
# 判断文件是否存在
print(os.path.exists(curFilePath))
print(os.path.exists(os.path.dirname(curFilePath)))
print(os.path.exists(os.path.dirname(curFilePath) + '/demo.py'))
print('6--------------------------------------------------------')
# 判断是否为文件
print(os.path.isfile(curFilePath))
print(os.path.isfile(os.path.dirname(curFilePath)))
print(os.path.isfile(os.path.dirname(curFilePath) + '/demo.py'))
print('7--------------------------------------------------------')
# 判断是否为目录
print(os.path.isdir(curFilePath))
print(os.path.isdir(os.path.dirname(curFilePath)))
print(os.path.isdir(os.path.dirname(curFilePath) + '/demo.py'))
print('8--------------------------------------------------------')
# 组合路径
print(os.path.join(os.path.dirname(curFilePath), 'demo.py'))
print(os.path.join(os.path.dirname(curFilePath), 'demo.py', 'demo.py'))
print('9--------------------------------------------------------')
# 获取文件大小
print(os.path.getsize(curFilePath))
print(os.path.getsize(os.path.dirname(curFilePath))) # 文件目录的大小，不是文件的大小，文件目录不存在会报错
# print(os.path.getsize(os.path.dirname(curFilePath) + '/demo.py')) # 文件不存在会报错
print('10--------------------------------------------------------')
print(os.path.getmtime(curFilePath)) # 文件最后修改时间
print(os.path.getatime(curFilePath)) # 文件最后访问时间
print(os.path.getctime(curFilePath)) # 文件创建时间
print('11--------------------------------------------------------')
